package com.company.cloud.tenant.modules.api.response;

import com.company.cloud.tenant.modules.api.request.TenantImageItem;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;

@Getter
@Setter
public class TenantFull extends TenantSimple{


//    @ApiModelProperty(value = "公司编号")
//    private String companyNo;
//
//    @ApiModelProperty(value = "公司名称")
//    private String name;
//    @ApiModelProperty(value = "公司简称")
//    private String shortName;
//
//    @ApiModelProperty(value = "公司分类")
//    private String type;
//
//    @ApiModelProperty(value = "公司Logo")
//    private String logo;

    @ApiModelProperty(value = "公司来源分类")
    private String sourceType;

    @ApiModelProperty(value = "公司来源")
    private String source;

    @ApiModelProperty(value = "公司联系人")
    private String linkManName;

    @ApiModelProperty(value = "公司联系人手机号")
    private String linkManMobile;

    @ApiModelProperty(value = "公司联系人电话")
    private String linkManTel;

    @ApiModelProperty(value = "状态")
    private String state;

    @ApiModelProperty(value = "使用时间")
    private Integer useDay;

    @ApiModelProperty(value = "开通时间")
    private LocalDateTime openTime;

    @ApiModelProperty(value = "截止时间")
    private LocalDateTime endTime;

    @ApiModelProperty(value = "使用用户人数")
    private Integer useUserNum;

    @ApiModelProperty(value = "已使用用户人数")
    private Integer alreadyUseUserNum;

    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applyDate;

    @ApiModelProperty(value = "申请人")
    private Integer applyUserId;

    @ApiModelProperty(value = "申请人IP")
    private String applyIp;

    @ApiModelProperty(value = "审核备注")
    private String checkRemark;

    @ApiModelProperty(value = "审核时间")
    private LocalDateTime checkDate;

    @ApiModelProperty(value = "审核人")
    private Integer checkUserId;

    @ApiModelProperty(value = "审核IP")
    private String checkIp;

    @ApiModelProperty(value = "管理员用户ID")
    private Integer adminUserId;

    @ApiModelProperty(value = "用户名")
    private String adminUserName;

    @ApiModelProperty(value = "用户昵称")
    private String adminUserNickName;

    @ApiModelProperty(value = "真实姓名")
    private String adminUserRealName;

    @ApiModelProperty(value = "用户头像")
    private String adminUserHeadImg;

    @ApiModelProperty(value = "开通服务")
    private List<TenantServiceModel> openItems;

    @ApiModelProperty(value = "经纬度类型")
    private String llType;


    @ApiModelProperty(value = "经度")
    private Double longitude;


    @ApiModelProperty(value = "纬度")
    private Double latitude;


    @ApiModelProperty(value = "公司地址")
    private String addr;


    @ApiModelProperty(value = "标签")
    private Set<String> tags;

    @ApiModelProperty(value = "简介")
    private String memo;


    @ApiModelProperty(value = "详情")
    private String detail;


    @ApiModelProperty(value = "排序")
    private Integer orders;


    @ApiModelProperty(value = "扩展字段1")
    private String extendOne;


    @ApiModelProperty(value = "扩展字段2")
    private String extendTwo;


    @ApiModelProperty(value = "扩展字段3")
    private String extendThree;


    @ApiModelProperty(value = "扩展字段4")
    private String extendFour;

    @ApiModelProperty(value = "扩展字段5")
    private String extendFive;

    @ApiModelProperty(value = "图片")
    private List<TenantImageItem> images;



    public void addOpenItem(TenantServiceModel model){
        if(this.openItems==null){
            this.openItems=new ArrayList<TenantServiceModel>();
        }
        if(model!=null){
            this.openItems.add(model);
        }
    }



}
